library(lubridate)
library(ggplot2)
library(ggplot2)
# A01
Plot_05 <- read.csv("Plot_05.csv" , sep = ";")
# A01
Plot_05 <- read.csv("Plot_5.csv" , sep = ";")
# A01
Plot_05 <- read.csv("Plot_5.csv" , sep = ";")
# A01
Plot_05 <- read.csv("Plot_5.csv" , sep = ";")
A01$Datum.Zeit..GMT.01.00 <- as.POSIXct(A01$Datum.Zeit..GMT.01.00, format = "%m.%d.%y %H:%M", tz = "GMT")
Plot_05$datetime <- as.POSIXct(Plot_05$datetime, format = "%m.%d.%y %H:%M", tz = "GMT")
# A01
Plot_05 <- read.csv("Plot_5.csv" , sep = ";")
# Ückeritz
Plot_05 <- read.csv("Plot_5.csv" , sep = ";")
head(Plot_05)
summary(Plot_05)
Plot_05$datetime <- as.POSIXct(Plot_05$datetime, format = "%d.%m.%Y %H:%M", tz = "CET")
daily_means_Plot_05 <- Plot_05 %>%
mutate(date = as.Date(datetime)) %>%
group_by(date) %>%
summarise(daily_mean = mean(t2_Plot_5, na.rm = TRUE))
annual_mean_plot_05 <- mean(daily_means_Plot_05$daily_mean, na.rm = TRUE)
###
Plot_20 <- read.csv("Plot_20.csv" , sep = ";")
###
Plot_20 <- read.csv("Plot_20.csv" , sep = ";")
Plot_20$datetime <- as.POSIXct(Plot_20$datetime, format = "%d.%m.%Y %H:%M", tz = "CET")
daily_means_Plot_20 <- Plot_20 %>%
mutate(date = as.Date(datetime)) %>%
group_by(date) %>%
summarise(daily_mean = mean(t2_Plot_20, na.rm = TRUE))
annual_mean_plot_20 <- mean(daily_means_Plot_20$daily_mean, na.rm = TRUE)
Plot_05 <- read.csv("Plot_5.csv" , sep = ";")
###
Plot_21 <- read.csv("Plot_21.csv" , sep = ";")
Plot_21$datetime <- as.POSIXct(Plot_21$datetime, format = "%d.%m.%Y %H:%M", tz = "CET")
daily_means_Plot_21 <- Plot_21 %>%
mutate(date = as.Date(datetime)) %>%
group_by(date) %>%
summarise(daily_mean = mean(t2_Plot_21, na.rm = TRUE))
annual_mean_plot_21 <- mean(daily_means_Plot_21$daily_mean, na.rm = TRUE)
###
Plot_22 <- read.csv("Plot_22.csv" , sep = ";")
head(Plot_22)
summary(Plot_22)
Plot_22$datetime <- as.POSIXct(Plot_22$datetime, format = "%d.%m.%Y %H:%M", tz = "CET")
daily_means_Plot_22 <- Plot_22 %>%
mutate(date = as.Date(datetime)) %>%
group_by(date) %>%
summarise(daily_mean = mean(t2_Plot_22, na.rm = TRUE))
annual_mean_plot_22 <- mean(daily_means_Plot_22$daily_mean, na.rm = TRUE)
# Balm
Plot_11 <- read.csv("Plot_11.csv" , sep = ";")
head(Plot_11)
summary(Plot_11)
Plot_11$datetime <- as.POSIXct(Plot_11$datetime, format = "%d.%m.%Y %H:%M", tz = "CET")
daily_means_Plot_11 <- Plot_11 %>%
mutate(date = as.Date(datetime)) %>%
group_by(date) %>%
summarise(daily_mean = mean(t2_Plot_11, na.rm = TRUE))
annual_mean_plot_11<- mean(daily_means_Plot_11$daily_mean, na.rm = TRUE)
Plot_05 <- read.csv("Plot_5.csv" , sep = ";")
head(Plot_05)
summary(Plot_05)
Plot_05$datetime <- as.POSIXct(Plot_05$datetime, format = "%d.%m.%Y %H:%M", tz = "CET")
daily_means_Plot_05 <- Plot_05 %>%
mutate(date = as.Date(datetime)) %>%
group_by(date) %>%
summarise(daily_mean = mean(t2_Plot_5, na.rm = TRUE))
annual_mean_plot_05 <- mean(daily_means_Plot_05$daily_mean, na.rm = TRUE)
###
Plot_20 <- read.csv("Plot_20.csv" , sep = ";")
Plot_20$datetime <- as.POSIXct(Plot_20$datetime, format = "%d.%m.%Y %H:%M", tz = "CET")
daily_means_Plot_20 <- Plot_20 %>%
mutate(date = as.Date(datetime)) %>%
group_by(date) %>%
summarise(daily_mean = mean(t2_Plot_20, na.rm = TRUE))
annual_mean_plot_20 <- mean(daily_means_Plot_20$daily_mean, na.rm = TRUE)
###
Plot_21 <- read.csv("Plot_21.csv" , sep = ";")
Plot_21$datetime <- as.POSIXct(Plot_21$datetime, format = "%d.%m.%Y %H:%M", tz = "CET")
daily_means_Plot_21 <- Plot_21 %>%
mutate(date = as.Date(datetime)) %>%
group_by(date) %>%
summarise(daily_mean = mean(t2_Plot_21, na.rm = TRUE))
annual_mean_plot_21 <- mean(daily_means_Plot_21$daily_mean, na.rm = TRUE)
###
Plot_22 <- read.csv("Plot_22.csv" , sep = ";")
head(Plot_22)
summary(Plot_22)
Plot_22$datetime <- as.POSIXct(Plot_22$datetime, format = "%d.%m.%Y %H:%M", tz = "CET")
daily_means_Plot_22 <- Plot_22 %>%
mutate(date = as.Date(datetime)) %>%
group_by(date) %>%
summarise(daily_mean = mean(t2_Plot_22, na.rm = TRUE))
annual_mean_plot_22 <- mean(daily_means_Plot_22$daily_mean, na.rm = TRUE)
# Balm
Plot_11 <- read.csv("Plot_11.csv" , sep = ";")
head(Plot_11)
summary(Plot_11)
Plot_11$datetime <- as.POSIXct(Plot_11$datetime, format = "%d.%m.%Y %H:%M", tz = "CET")
daily_means_Plot_11 <- Plot_11 %>%
mutate(date = as.Date(datetime)) %>%
group_by(date) %>%
summarise(daily_mean = mean(t2_Plot_11, na.rm = TRUE))
annual_mean_plot_11<- mean(daily_means_Plot_11$daily_mean, na.rm = TRUE)
###
Plot_12 <- read.csv("Plot_12.csv" , sep = ";")
Plot_12$datetime <- as.POSIXct(Plot_12$datetime, format = "%d.%m.%Y %H:%M", tz = "CET")
daily_means_Plot_12 <- Plot_12 %>%
mutate(date = as.Date(datetime)) %>%
group_by(date) %>%
summarise(daily_mean = mean(t2_Plot_12, na.rm = TRUE))
annual_mean_plot_12 <- mean(daily_means_Plot_12$daily_mean, na.rm = TRUE)
###
Plot_14 <- read.csv("Plot_14.csv" , sep = ";")
Plot_14$datetime <- as.POSIXct(Plot_14$datetime, format = "%d.%m.%Y %H:%M", tz = "CET")
daily_means_Plot_14 <- Plot_14 %>%
mutate(date = as.Date(datetime)) %>%
group_by(date) %>%
summarise(daily_mean = mean(t2_Plot_14, na.rm = TRUE))
annual_mean_plot_14 <- mean(daily_means_Plot_14$daily_mean, na.rm = TRUE)
###
Plot_15 <- read.csv("Plot_15.csv" , sep = ";")
Plot_15$datetime <- as.POSIXct(Plot_15$datetime, format = "%d.%m.%Y %H:%M", tz = "CET")
daily_means_Plot_22 <- Plot_15 %>%
mutate(date = as.Date(datetime)) %>%
group_by(date) %>%
summarise(daily_mean = mean(t2_Plot_15, na.rm = TRUE))
annual_mean_plot_15 <- mean(daily_means_Plot_15$daily_mean, na.rm = TRUE)
###
Plot_15 <- read.csv("Plot_15.csv" , sep = ";")
Plot_15$datetime <- as.POSIXct(Plot_15$datetime, format = "%d.%m.%Y %H:%M", tz = "CET")
daily_means_Plot_15 <- Plot_15 %>%
mutate(date = as.Date(datetime)) %>%
group_by(date) %>%
summarise(daily_mean = mean(t2_Plot_15, na.rm = TRUE))
annual_mean_plot_15 <- mean(daily_means_Plot_15$daily_mean, na.rm = TRUE)
# Ferne Wiesen
Plot_24 <- read.csv("Plot_24.csv" , sep = ";")
Plot_24$datetime <- as.POSIXct(Plot_24$datetime, format = "%d.%m.%Y %H:%M", tz = "CET")
daily_means_Plot_24 <- Plot_24 %>%
mutate(date = as.Date(datetime)) %>%
group_by(date) %>%
summarise(daily_mean = mean(t2_Plot_24, na.rm = TRUE))
annual_mean_plot_24<- mean(daily_means_Plot_24$daily_mean, na.rm = TRUE)
###
Plot_25 <- read.csv("Plot_25.csv" , sep = ";")
Plot_25$datetime <- as.POSIXct(Plot_25$datetime, format = "%d.%m.%Y %H:%M", tz = "CET")
daily_means_Plot_25 <- Plot_25 %>%
mutate(date = as.Date(datetime)) %>%
group_by(date) %>%
summarise(daily_mean = mean(t2_Plot_25, na.rm = TRUE))
annual_mean_plot_25 <- mean(daily_means_Plot_25$daily_mean, na.rm = TRUE)
###
Plot_26 <- read.csv("Plot_26.csv" , sep = ";")
Plot_26$datetime <- as.POSIXct(Plot_26$datetime, format = "%d.%m.%Y %H:%M", tz = "CET")
daily_means_Plot_26 <- Plot_26 %>%
mutate(date = as.Date(datetime)) %>%
group_by(date) %>%
summarise(daily_mean = mean(t2_Plot_26, na.rm = TRUE))
annual_mean_plot_26 <- mean(daily_means_Plot_26$daily_mean, na.rm = TRUE)
###
Plot_27 <- read.csv("Plot_27.csv" , sep = ";")
Plot_27$datetime <- as.POSIXct(Plot_27$datetime, format = "%d.%m.%Y %H:%M", tz = "CET")
daily_means_Plot_27 <- Plot_27 %>%
mutate(date = as.Date(datetime)) %>%
group_by(date) %>%
summarise(daily_mean = mean(t2_Plot_27, na.rm = TRUE))
###
Plot_26 <- read.csv("Plot_26.csv" , sep = ";")
Plot_26$datetime <- as.POSIXct(Plot_26$datetime, format = "%d.%m.%Y %H:%M", tz = "CET")
daily_means_Plot_26 <- Plot_26 %>%
mutate(date = as.Date(datetime)) %>%
group_by(date) %>%
summarise(daily_mean = mean(t2_Plot_26, na.rm = TRUE))
annual_mean_plot_26 <- mean(daily_means_Plot_26$daily_mean, na.rm = TRUE)
###
Plot_27 <- read.csv("Plot_27.csv" , sep = ";")
# Lieschower Wiek
Plot_28 <- read.csv("Plot_28.csv" , sep = ";")
Plot_28$datetime <- as.POSIXct(Plot_28$datetime, format = "%d.%m.%Y %H:%M", tz = "CET")
daily_means_Plot_28 <- Plot_28 %>%
mutate(date = as.Date(datetime)) %>%
group_by(date) %>%
summarise(daily_mean = mean(t2_Plot_28, na.rm = TRUE))
annual_mean_plot_28<- mean(daily_means_Plot_28$daily_mean, na.rm = TRUE)
###
Plot_30 <- read.csv("Plot_30.csv" , sep = ";")
Plot_30$datetime <- as.POSIXct(Plot_30$datetime, format = "%d.%m.%Y %H:%M", tz = "CET")
daily_means_Plot_30 <- Plot_30 %>%
mutate(date = as.Date(datetime)) %>%
group_by(date) %>%
summarise(daily_mean = mean(t2_Plot_30, na.rm = TRUE))
annual_mean_plot_30 <- mean(daily_means_Plot_30$daily_mean, na.rm = TRUE)
###
Plot_31 <- read.csv("Plot_31.csv" , sep = ";")
Plot_31$datetime <- as.POSIXct(Plot_31$datetime, format = "%d.%m.%Y %H:%M", tz = "CET")
daily_means_Plot_31 <- Plot_31 %>%
mutate(date = as.Date(datetime)) %>%
group_by(date) %>%
summarise(daily_mean = mean(t2_Plot_31, na.rm = TRUE))
annual_mean_plot_31 <- mean(daily_means_Plot_31$daily_mean, na.rm = TRUE)
###
Plot_32 <- read.csv("Plot_32.csv" , sep = ";")
Plot_32$datetime <- as.POSIXct(Plot_32$datetime, format = "%d.%m.%Y %H:%M", tz = "CET")
daily_means_Plot_32 <- Plot_32 %>%
mutate(date = as.Date(datetime)) %>%
group_by(date) %>%
summarise(daily_mean = mean(t2_Plot_32, na.rm = TRUE))
annual_mean_plot_32 <- mean(daily_means_Plot_32$daily_mean, na.rm = TRUE)
# Sehrowbach
Plot_33 <- read.csv("Plot_33.csv" , sep = ";")
Plot_33$datetime <- as.POSIXct(Plot_33$datetime, format = "%d.%m.%Y %H:%M", tz = "CET")
daily_means_Plot_33 <- Plot_33 %>%
mutate(date = as.Date(datetime)) %>%
group_by(date) %>%
summarise(daily_mean = mean(t2_Plot_33, na.rm = TRUE))
annual_mean_plot_33<- mean(daily_means_Plot_33$daily_mean, na.rm = TRUE)
###
Plot_34 <- read.csv("Plot_34.csv" , sep = ";")
Plot_34$datetime <- as.POSIXct(Plot_34$datetime, format = "%d.%m.%Y %H:%M", tz = "CET")
daily_means_Plot_34 <- Plot_34 %>%
mutate(date = as.Date(datetime)) %>%
group_by(date) %>%
summarise(daily_mean = mean(t2_Plot_34, na.rm = TRUE))
annual_mean_plot_34 <- mean(daily_means_Plot_34$daily_mean, na.rm = TRUE)
###
Plot_35 <- read.csv("Plot_35.csv" , sep = ";")
Plot_35$datetime <- as.POSIXct(Plot_35$datetime, format = "%d.%m.%Y %H:%M", tz = "CET")
daily_means_Plot_35 <- Plot_35 %>%
mutate(date = as.Date(datetime)) %>%
group_by(date) %>%
summarise(daily_mean = mean(t2_Plot_35, na.rm = TRUE))
annual_mean_plot_35 <- mean(daily_means_Plot_35$daily_mean, na.rm = TRUE)
###
Plot_36 <- read.csv("Plot_36.csv" , sep = ";")
Plot_36$datetime <- as.POSIXct(Plot_36$datetime, format = "%d.%m.%Y %H:%M", tz = "CET")
daily_means_Plot_36 <- Plot_36 %>%
mutate(date = as.Date(datetime)) %>%
group_by(date) %>%
summarise(daily_mean = mean(t2_Plot_36, na.rm = TRUE))
annual_mean_plot_36 <- mean(daily_means_Plot_36$daily_mean, na.rm = TRUE)
# Liste der Datensätze
datasets_list <- list(annual_mean_plot_05, annual_mean_plot_11, annual_mean_plot_12, annual_mean_plot_14, annual_mean_plot_15, annual_mean_plot_20, annual_mean_plot_21, annual_mean_plot_22, annual_mean_plot_24, annual_mean_plot_25, annual_mean_plot_26, annual_mean_plot_28, annual_mean_plot_30, annual_mean_plot_31, annual_mean_plot_32, annual_mean_plot_33, annual_mean_plot_34, annual_mean_plot_35, annual_mean_plot_36)
# Funktion zum Zusammenführen und Umbenennen der Spalten
combine_datasets <- function(datasets_list) {
# Merken der Datensätze anhand des Datums
merged_data <- Reduce(function(x, y) merge(x, y, by = "Datum", all = TRUE), datasets_list)
# Umbenennen der Spalten
for (i in seq_along(datasets_list)) {
plot_name <- sub("daily_mean_water_", "", names(datasets_list[[i]])[2])
new_column_name <- paste0("Tagesmittel_Wasserstand_", plot_name)
names(merged_data)[names(merged_data) == new_column_name] <- new_column_name
}
return(merged_data)
}
# Datensätze zusammenführen und umbenennen
Tagesmittelwerte_Temp_plotweise <- combine_datasets(datasets_list)
# Liste der Datensätze
datasets_list <- list(daily_means_Plot_05, daily_means_Plot_11, daily_means_Plot_12, daily_means_Plot_14, daily_means_Plot_15, daily_means_Plot_20, daily_means_Plot_21, daily_means_Plot_22, daily_means_Plot_24, daily_means_Plot_25, daily_means_Plot_26, daily_means_Plot_28, daily_means_Plot_30, daily_means_Plot_31, daily_means_Plot_32, daily_means_Plot_33, daily_means_Plot_34, daily_means_Plot_35, daily_means_Plot_36)
plot_name <- sub("daily_means_Plot_", "", names(datasets_list[[i]])[2])
daily_means_Plot_05
# Liste der Datensätze
datasets_list <- list(daily_means_Plot_05, daily_means_Plot_11, daily_means_Plot_12, daily_means_Plot_14, daily_means_Plot_15, daily_means_Plot_20, daily_means_Plot_21, daily_means_Plot_22, daily_means_Plot_24, daily_means_Plot_25, daily_means_Plot_26, daily_means_Plot_28, daily_means_Plot_30, daily_means_Plot_31, daily_means_Plot_32, daily_means_Plot_33, daily_means_Plot_34, daily_means_Plot_35, daily_means_Plot_36)
# Funktion zum Zusammenführen und Umbenennen der Spalten
combine_datasets <- function(datasets_list) {
# Merken der Datensätze anhand des Datums
merged_data <- Reduce(function(x, y) merge(x, y, by = "date", all = TRUE), datasets_list)
# Umbenennen der Spalten
for (i in seq_along(datasets_list)) {
plot_name <- sub("daily_means_Plot_", "", names(datasets_list[[i]])[2])
new_column_name <- paste0("daily_mean_temperature_", plot_name)
names(merged_data)[names(merged_data) == new_column_name] <- new_column_name
}
return(merged_data)
}
# Datensätze zusammenführen und umbenennen
Tagesmittelwerte_Temp_plotweise <- combine_datasets(datasets_list)
View(Tagesmittelwerte_Temp_plotweise)
Tagesmittelwerte_Temp_plotweise <- Tagesmittelwerte_plotweise[-nrow(Tagesmittelwerte_plotweise), ]
Tagesmittelwerte_Temp_plotweise
head(Tagesmittelwerte_Temp_plotweise)
annual_mean_plot_05
# Liste der Datensätze
datasets_list_annual_mean <- list(annual_mean_plot_05, annual_mean_plot_11, annual_mean_plot_12, annual_mean_plot_14, annual_mean_plot_15, annual_mean_plot_20, annual_mean_plot_21, annual_mean_plot_22, annual_mean_plot_24, annual_mean_plot_25, annual_mean_plot_26, annual_mean_plot_28, annual_mean_plot_30, annual_mean_plot_31, annual_mean_plot_32, annual_mean_plot_33, annual_mean_plot_34, annual_mean_plot_35, annual_mean_plot_36)
# Liste der Datensätze
datasets_list <- list(daily_means_Plot_05, daily_means_Plot_11, daily_means_Plot_12, daily_means_Plot_14, daily_means_Plot_15, daily_means_Plot_20, daily_means_Plot_21, daily_means_Plot_22, daily_means_Plot_24, daily_means_Plot_25, daily_means_Plot_26, daily_means_Plot_28, daily_means_Plot_30, daily_means_Plot_31, daily_means_Plot_32, daily_means_Plot_33, daily_means_Plot_34, daily_means_Plot_35, daily_means_Plot_36)
daily_means_Plot_05
# Liste der Datensätze
datasets_list <- list(daily_means_Plot_05, daily_means_Plot_11, daily_means_Plot_12, daily_means_Plot_14, daily_means_Plot_15, daily_means_Plot_20, daily_means_Plot_21, daily_means_Plot_22, daily_means_Plot_24, daily_means_Plot_25, daily_means_Plot_26, daily_means_Plot_28, daily_means_Plot_30, daily_means_Plot_31, daily_means_Plot_32, daily_means_Plot_33, daily_means_Plot_34, daily_means_Plot_35, daily_means_Plot_36)
# Funktion zum Zusammenführen und Umbenennen der Spalten
combine_datasets <- function(datasets_list) {
# Merken der Datensätze anhand des Datums
merged_data <- Reduce(function(x, y) merge(x, y, by = "date", all = TRUE), datasets_list)
# Umbenennen der Spalten
for (i in seq_along(datasets_list)) {
plot_name <- sub("daily_means_Plot_", "", names(datasets_list[[i]])[2])
new_column_name <- paste0("daily_mean_temperature_", plot_name)
names(merged_data)[names(merged_data) == new_column_name] <- new_column_name
}
return(merged_data)
}
# Datensätze zusammenführen und umbenennen
Tagesmittelwerte_Temp_plotweise <- combine_datasets(datasets_list)
head(Tagesmittelwerte_Temp_plotweise)
datasets_list <- list(
Plot_05 = daily_means_Plot_05,
Plot_11 = daily_means_Plot_11,
Plot_12 = daily_means_Plot_12,
Plot_14 = daily_means_Plot_14,
Plot_15 = daily_means_Plot_15,
Plot_20 = daily_means_Plot_20,
Plot_21 = daily_means_Plot_21,
Plot_22 = daily_means_Plot_22,
Plot_24 = daily_means_Plot_24,
Plot_25 = daily_means_Plot_25,
Plot_26 = daily_means_Plot_26,
Plot_28 = daily_means_Plot_28,
Plot_30 = daily_means_Plot_30,
Plot_31 = daily_means_Plot_31,
Plot_32 = daily_means_Plot_32,
Plot_33 = daily_means_Plot_33,
Plot_34 = daily_means_Plot_34,
Plot_35 = daily_means_Plot_35,
Plot_36 = daily_means_Plot_36
)
datasets_list <- imap(datasets_list, ~rename(.x, !!paste0("daily_mean_", .y) := daily_mean))
library(purrr)
datasets_list <- imap(datasets_list, ~rename(.x, !!paste0("daily_mean_", .y) := daily_mean))
Tagesmittelwerte_Temp_plotweise <- reduce(datasets_list, full_join, by = "date")
head(Tagesmittelwerte_Temp_plotweise)
View(Tagesmittelwerte_Temp_plotweise)
head(Tagesmittelwerte_Temp_plotweise)
datasets_list <- imap(datasets_list, ~rename(.x, !!paste0("daily_mean_", .y) := daily_mean))
Tagesmittelwerte_Temp_plotweise <- reduce(datasets_list, full_join, by = "date")
datasets_list <- list(
Plot_05 = daily_means_Plot_05,
Plot_11 = daily_means_Plot_11,
Plot_12 = daily_means_Plot_12,
Plot_14 = daily_means_Plot_14,
Plot_15 = daily_means_Plot_15,
Plot_20 = daily_means_Plot_20,
Plot_21 = daily_means_Plot_21,
Plot_22 = daily_means_Plot_22,
Plot_24 = daily_means_Plot_24,
Plot_25 = daily_means_Plot_25,
Plot_26 = daily_means_Plot_26,
Plot_28 = daily_means_Plot_28,
Plot_30 = daily_means_Plot_30,
Plot_31 = daily_means_Plot_31,
Plot_32 = daily_means_Plot_32,
Plot_33 = daily_means_Plot_33,
Plot_34 = daily_means_Plot_34,
Plot_35 = daily_means_Plot_35,
Plot_36 = daily_means_Plot_36
)
datasets_list <- imap(datasets_list, ~rename(.x, !!paste0("daily_mean_", .y) := daily_mean))
Tagesmittelwerte_Temp_plotweise <- reduce(datasets_list, full_join, by = "date")
head(Tagesmittelwerte_Temp_plotweise)
datasets_list <- list(
Plot_05 = daily_means_Plot_05,
Plot_11 = daily_means_Plot_11,
Plot_12 = daily_means_Plot_12,
Plot_14 = daily_means_Plot_14,
Plot_15 = daily_means_Plot_15,
Plot_20 = daily_means_Plot_20,
Plot_21 = daily_means_Plot_21,
Plot_22 = daily_means_Plot_22,
Plot_24 = daily_means_Plot_24,
Plot_25 = daily_means_Plot_25,
Plot_26 = daily_means_Plot_26,
Plot_28 = daily_means_Plot_28,
Plot_30 = daily_means_Plot_30,
Plot_31 = daily_means_Plot_31,
Plot_32 = daily_means_Plot_32,
Plot_33 = daily_means_Plot_33,
Plot_34 = daily_means_Plot_34,
Plot_35 = daily_means_Plot_35,
Plot_36 = daily_means_Plot_36
)
datasets_list <- imap(datasets_list, ~rename(.x, !!.y := daily_mean))
Tagesmittelwerte_Temp_plotweise <- reduce(datasets_list, full_join, by = "date")
head(Tagesmittelwerte_Temp_plotweise)
#################
#######Jahresmitteltemperaturen ######
long_daily <- Tagesmittelwerte_Temp_plotweise %>%
pivot_longer(-date, names_to = "plot", values_to = "temp")
# Einfacher Jahresmittelwert
simple_means <- long_daily %>%
group_by(plot) %>%
summarise(mean_simple = mean(temp, na.rm = TRUE), .groups = "drop")
# Saisonal gewichteter Jahresmittelwert
# Monatsinfo hinzufügen
long_daily <- long_daily %>%
mutate(month = as.integer(format(date, "%m")))
# Für jede Parzelle Monatsmittelwerte berechnen
monthly_means <- long_daily %>%
group_by(plot, month) %>%
summarise(m = mean(temp, na.rm = TRUE), .groups = "drop")
# Januar ≈ Dezember, Februar ≈ März
seasonal_means <- monthly_means %>%
group_by(plot) %>%
summarise(
jan = m[month == 12],
feb = m[month == 3],
other_months = list(m[month %in% 4:11]),
.groups = "drop"
) %>%
mutate(
mean_seasonal = (31*jan + 28*feb +
sum(c(30,31,30,31,31,30,31,30)*unlist(other_months))) / 365
) %>%
select(plot, mean_seasonal)
# Januar ≈ Dezember, Februar ≈ März
seasonal_means <- monthly_means %>%
group_by(plot) %>%
summarise(
jan = m[month == 12],   # Ersatz für Januar
feb = m[month == 3],    # Ersatz für Februar
apr = m[month == 4],
may = m[month == 5],
jun = m[month == 6],
jul = m[month == 7],
aug = m[month == 8],
sep = m[month == 9],
oct = m[month == 10],
nov = m[month == 11],
dec = m[month == 12],
.groups = "drop"
) %>%
mutate(
mean_seasonal = (
31*jan + 28*feb + 30*apr + 31*may + 30*jun + 31*jul +
31*aug + 30*sep + 31*oct + 30*nov + 31*dec
) / 365
) %>%
select(plot, mean_seasonal)
# Für jede Parzelle Monatsmittelwerte berechnen
monthly_means <- long_daily %>%
group_by(plot, month) %>%
summarise(m = mean(temp, na.rm = TRUE), .groups = "drop")
#################
#######Jahresmitteltemperaturen ######
# --- 1. Lange Tabelle erzeugen ---
long_daily <- Tagesmittelwerte_Temp_plotweise %>%
pivot_longer(-date, names_to = "plot", values_to = "temp")
# --- 2. Einfacher Mittelwert (März–Dez) ---
simple_means <- long_daily %>%
group_by(plot) %>%
summarise(mean_simple = mean(temp, na.rm = TRUE), .groups = "drop")
# --- 3. Monatsmittelwerte berechnen ---
monthly_means <- long_daily %>%
mutate(month = as.integer(format(date, "%m"))) %>%
group_by(plot, month) %>%
summarise(m = mean(temp, na.rm = TRUE), .groups = "drop")
# --- 4. Saisonaler Mittelwert (Jan≈Dez, Feb≈März) ---
seasonal_means <- monthly_means %>%
group_by(plot) %>%
summarise(
jan = m[month == 12],   # Ersatz für Januar
feb = m[month == 3],    # Ersatz für Februar
apr = m[month == 4],
may = m[month == 5],
jun = m[month == 6],
jul = m[month == 7],
aug = m[month == 8],
sep = m[month == 9],
oct = m[month == 10],
nov = m[month == 11],
dec = m[month == 12],
.groups = "drop"
) %>%
mutate(
mean_seasonal = (
31*jan + 28*feb + 30*apr + 31*may + 30*jun + 31*jul +
31*aug + 30*sep + 31*oct + 30*nov + 31*dec
) / 365
) %>%
select(plot, mean_seasonal)
# --- 4. Saisonaler Mittelwert (Jan≈Dez, Feb≈März) ---
seasonal_means <- monthly_means %>%
group_by(plot) %>%
reframe(
jan = mean(m[month == 12], na.rm = TRUE),  # Dezember als Ersatz für Januar
feb = mean(m[month == 3], na.rm = TRUE),   # März als Ersatz für Februar
apr = mean(m[month == 4], na.rm = TRUE),
may = mean(m[month == 5], na.rm = TRUE),
jun = mean(m[month == 6], na.rm = TRUE),
jul = mean(m[month == 7], na.rm = TRUE),
aug = mean(m[month == 8], na.rm = TRUE),
sep = mean(m[month == 9], na.rm = TRUE),
oct = mean(m[month == 10], na.rm = TRUE),
nov = mean(m[month == 11], na.rm = TRUE),
dec = mean(m[month == 12], na.rm = TRUE)
) %>%
mutate(
mean_seasonal = (
31*jan + 28*feb + 30*apr + 31*may + 30*jun + 31*jul +
31*aug + 30*sep + 31*oct + 30*nov + 31*dec
) / 365
) %>%
select(plot, mean_seasonal)
# --- 5. Beide Ergebnisse zusammenführen ---
Jahresmittelwerte <- simple_means %>%
left_join(seasonal_means, by = "plot")
# Ergebnis ansehen
print(Jahresmittelwerte, n = Inf)
write.csv(Jahresmittelwerte, "Jahresmittelwerte_Temp_Schilf.csv", row.names = FALSE)
